#include "Person.h"
#include <iostream>

class Person::Impl
{
public:
	Impl(const std::string& strName, int nAge)
		:_nAge(nAge), _strName(strName){}

	void IntroduceImpl() const
	{
		std::cout << "Name " << _strName 
			<<"\t"
			<< "Age " << _nAge << std::endl;
	}
private:
	std::string _strName;
	int _nAge;
};

Person::Person(const std::string& strName, int nAge)
	: _pImpl(std::make_unique<Impl>(strName, nAge))
{
}

Person::~Person()
{
}

void Person::Introduce()
{
	_pImpl->IntroduceImpl();
}
